package com.example.Gethome.service;

import com.example.Gethome.entity.User;
import com.example.Gethome.repository.UserRepository;
import com.example.Gethome.security.securityID;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class UserService {

    @Autowired
    private UserRepository userRepository;

    private securityID securityID;

    /*
    * 用户以全部属性进行注册
     */
    public void addUser(User user) {
        // 验证用户的身份证信息
//        if(securityID.secureIDNumber(user.getId_card())) {
//            // 如果返回的身份证号是正确的
//            userRepository.save(user);
//            return true;
//        } else {
//            // 返回的身份证号不是合法的，不存信息
//            return false;
//        }
         userRepository.save(user);
    }

    /*
    * 违规用户被关小黑屋
     */
    public void deleteUser(User user) {
        userRepository.delete(user);
    }

    /*
    * 用户更新自己的身份数据
     */
    public void updateUser(User user) {
        // 更新身份数据的时候也需要进行身份验证
//        if(securityID.secureIDNumber(user.getId_card())) {
//            // 用户身份证号通过验证
//            userRepository.save(user);
//            return true;
//        } else {
//            // 用户的身份数据不真实
//            return false;
//        }
        userRepository.save(user);
    }

    /*
    * 用户登陆的时候能够使用用户名和密码进行登录，若数据库中能够查到相应的数据则为真
    * 若是查不到相关数据则证明用户尚未注册，返回false
     */
    public boolean loginUser(String username, String password) {
        // 若是查询到一条信息说明用户有这个信息，那么我们就可以说明这个用户注册过了
        if(userRepository.findByUsernameAndPassword(username, password).size() == 1) {
            return true;
        } else return false; // 查询到数据不为1，则说明用户尚未注册
    }

}
